Conventional reverse geocoding typically can involve analyzing a street network model in order to associate a latitude and longitude coordinate of a mobile device (e.g., a mobile telephone, a personal digital assistant, a wrist watch, an offender ankle bracelet or other suitable device) with the nearest road segment. Nearby road segments are commonly returned in the form of a human recognizable address. Because of factors such as poor signal coverage, limited exposure to open skies for satellite reads, and the amount of movement of a mobile device, there may be an unacceptable level of uncertainty (i.e., error tolerance) associated with the mobile device's coordinate. For example, a parent using a “child finder” application may be told by the application that their child is at a specific address when in reality there is a +/−800 yard inaccuracy associated with the original coordinate information used in the reverse geocoding process.
Typical cellular network operators can use various approaches for determining the location of a mobile device, depending on the information that is available. One high accuracy approach actives a Global Positioning System (GPS) receiver in the mobile device in order to develop a reasonably precise location of the mobile device at a point in time. Another low accuracy approach maps a cellular tower that a mobile device is using (e.g., based on signal strength) to a geographic region. An intermediate approach uses one or more last known GPS location(s) to determine a location of the mobile device based on an estimated trajectory.
FIG. 1a is a flow diagram describing obtaining and providing location information in the prior art. A location source (e.g., a network operator, a web service or other suitable source of location information) receives a request for the location of a mobile device (step 101). For example, the location source can be accessed using the Open Mobility Alliance (OMA) Mobile Location Protocol (MLP). The MLP allows systems to interact with location sources to receive location information as Extensible Markup Language (XML) over Hypertext Transport Protocol (HTTP).
Location information is determined as described above (step 103) and a determination is made as to the accuracy of the location information (step 105). The location information is then provided to the requestor (step 107). The location information can incorporate a shape that defines a geographic area where the mobile device might be located.
For example, FIG. 1b shows a map 100 indicating the location of a cellular telephone tower 102 and the actual location of a mobile device 104. The mobile device can be located by a cellular telephone network using, for example, approaches as described above. If the mobile device's location is exactly known or is known with a high degree of accuracy, it can provided to a requestor as a definite address. For example:
111 McInnis Pkwy
San Rafael, Calif. 94903
However, if the location of the mobile device cannot be accurately determined, e.g., the mobile device's location is somewhere within a two mile radius (i.e., a shape) surrounding the cellular tower 102, the location information provided to the requester in step 107 is vague. For example, the location information might be the nearest street address to the wireless network cellular tower 102 serving the mobile device at the time of the location request:
[700-900] Las Gallinas Ave.
San Rafael, Calif. 94903
But this location is about one mile across town from the building where the mobile device is actually located (104). Given the fact that a significant and recognizable landmark (i.e., shopping mall 106) is within the shape, a more relevant location could have been provided such as, “Within 3 miles of Northgate Mall, San Rafael, Calif.”